package infoManage.dao;

import infoManage.domain.Student;

public class StudentDao {
    // 创建学生对象集合
    // 将使用的Student[] 学生数组变为共享数据，加入static静态修饰
    private static Student[] list = new Student[5];
    public Student[] findAllStudents() { // 查看学生信息
        return list;
    }

    public boolean addStudent(Student stu) { // 添加学生信息
        int index = -1;
        for (int i = 0; i < list.length; i++) {
            if(list[i] == null) {
                index = i;
                // 如果为null，让index变量记录当前索引位置，并使用break结束循环遍历
                break;
            }
        }
        if(index == -1) {
            // 装满了
            return false;
        } else {
            list[index] = stu;
            return true;
        }
    }

    public void deleteStudent(String id) { // 删除学生信息
        int index = getIndex(id);
        list[index] = null;
    }

    public int getIndex(String id) { // 获取索引
        int index= -1;
        for (int i = 0; i < list.length; i++) {
            Student stu = list[i];
            if(stu != null && stu.getId().equals(id)) {
                index = i;
                break;
            }
        }
        return index;
    }

    public void editStudent(Student student) {
        int index = getIndex(student.getId());
        list[index] = student;
    }
}
